|
Weak typing is "friendlier" to the programmer than strong typing, but catches fewer errors at compile time. C and C++ are weakly typed, as they automatically {coerce} many types e.g. {ints} and {floats}. E.g. int a = 5; float b = a; They also allow ignore {typedefs} for the purposes of type comparison; for example the following is allowed, which would probably be disallowed in a strongly typed language: typedef int Date; /* Type to represent a date */ Date a = 12345; int b = a; /* What does the coder intend? */ C++ is stricter than C in its handling of enumerated types: enum animal {CAT=0,DOG=2,ANT=3}; enum animal a = CAT; /* NB The enum is optional in C++ */ enum animal b = 1; /* This is a warning or error in C++ */ (2000-07-04) スポンサード リンク
|